package com.ruoyi.system.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 流程关联节点业务对象 lc_node
 *
 * @author ruoyi
 * @date 2023-06-04
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class NodeVo extends BaseEntity {

    private Integer number;

    /**
     * id
     */
    private Long nodeId;
    /**
     * 流程id
     */
    private Long processId;

    /**
     * 流程key
     */
    private String processNo;

    /**
     * 流程名称
     */
    private String processName;

    /**
     * 版本号
     */
    private String processVersion;

    /**
     * 部门名称
     */
    private String hostDeptName;
    /**
     * 流程说明
     */
    private String description;
    /**
     * 更新人
     */
    private String updateBy;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;
    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date updateTime;
    /**
     * 责任部门职责
     */
    private String responsibilityDeptValue;
    /**
     * 基层单位职责
     */
    private String grassrootsDeptValue;
    /**
     * 横向部门职责
     */
    private String transverseDeptValue;
    /**
     * 流程分类
     */
    private String businessTypeName;
    /**
     * 流程分类
     */
    private Long businessTypeId;
    /**
     * 制度文件
     */
    private String systemJson;
    /**
     * 制度文件
     */
    private String jsonValue1;
    /**
     * 制度文件
     */
    private String jsonValue2;
    /**
     * 制度文件
     */
    private String jsonValue3;
    private String jsonValue4;
    private String jsonValue5;

    /**
     * 状态
     */
    private Integer processAuditType;

    private String nodeKey;

    private String nodeName;

    private String institution;

    private String complianceJson;

    /**
     * 评估状态（0:未评估，1:待评估，2:已评估）
     */
    private Integer initiateType;
    /**
     * 评估时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date initiateTime;
}
